Computes the LQ factorization of an M-by-N matrix where is a lower triangular (or lower trapezoidal) matrix and is a orthogonal matrix.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=real64), | intent(inout), | dimension(:,:) | :: | a |
On input, the M-by-N matrix to factor. On output, the elements on and below the diagonal contain the MIN(M, N)-by-N lower trapezoidal matrix ( is lower triangular if M >= N). The elements above the diagonal, along with the array tau, represent the orthogonal matrix as a product of elementary reflectors. |
|
real(kind=real64), | intent(out), | dimension(:) | :: | tau |
A MIN(M, N)-element array used to store the scalar factors of the elementary reflectors. |
|
real(kind=real64), | intent(out), | optional, | target, dimension(:) | :: | work |
An optional input, that if provided, prevents any local memory allocation. If not provided, the memory required is allocated within. If provided, the length of the array must be at least olwork. |
integer(kind=int32), | intent(out), | optional | :: | olwork |
An optional output used to determine workspace size. If supplied, the routine determines the optimal size for work, and returns without performing any actual calculations. |
|
class(errors), | intent(inout), | optional, | target | :: | err |
The error object to be updated. |
Computes the LQ factorization of an M-by-N matrix where is a lower triangular (or lower trapezoidal) matrix and is a orthogonal matrix.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
complex(kind=real64), | intent(inout), | dimension(:,:) | :: | a |
On input, the M-by-N matrix to factor. On output, the elements on and below the diagonal contain the MIN(M, N)-by-N lower trapezoidal matrix ( is lower triangular if M >= N). The elements above the diagonal, along with the array tau, represent the orthogonal matrix as a product of elementary reflectors. |
|
complex(kind=real64), | intent(out), | dimension(:) | :: | tau |
A MIN(M, N)-element array used to store the scalar factors of the elementary reflectors. |
|
complex(kind=real64), | intent(out), | optional, | target, dimension(:) | :: | work |
An optional input, that if provided, prevents any local memory allocation. If not provided, the memory required is allocated within. If provided, the length of the array must be at least olwork. |
integer(kind=int32), | intent(out), | optional | :: | olwork |
An optional output used to determine workspace size. If supplied, the routine determines the optimal size for work, and returns without performing any actual calculations. |
|
class(errors), | intent(inout), | optional, | target | :: | err |
The error object to be updated. |